<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui">

    <ui:composition template="/plantillas/plantillaPrincipal.xhtml">
        <ui:define name="contenido">
            <f:view>
                <h:form id="formFindProdDisponible">

                    <p:panel id="pnlFindProdDisponible" header="Kardex Articulo"
                             style="width:650px;margin: 5px auto" 
                             toggleable="true" widgetVar="buscar">

                        <h:panelGrid columns="2" styleClass="grid">

                            <h:outputLabel id="lblArticulo" value="ARTICULO: " class="lblBusqueda" />
                            <p:selectOneMenu id="cbxArticulo" value="#{BKArticuloKardex.kardexBusqueda.id.idArticulo}"
                                             disabled="#{BKArticuloKardex.kardexBusqueda.id.idSede eq 0}" panelStyle="width:500px" style="width: 500px"
                                             filterMatchMode="contains" filter="#{BKArticuloKardex.listaArticulo.size() gt 10}" >
                                <f:selectItem itemLabel="Seleccionar" itemValue="0" />
                                <f:selectItems value="#{BKArticuloKardex.listaArticulo}"
                                               var="articulo" itemLabel="#{articulo.nombreComercial}"
                                               itemValue="#{articulo.id}" />
                                <p:ajax listener="#{MBArticuloKardex.buscarPartidas}" update="cbxPartida" event="change" />
                            </p:selectOneMenu>

                            <h:outputLabel id="lblPartida" value="PARTIDA/LOTE: " class="lblBusqueda" />
                            <p:selectOneMenu id="cbxPartida" value="#{BKArticuloKardex.kardexBusqueda.id.partidaLote}"
                                             disabled="#{BKArticuloKardex.kardexBusqueda.id.idArticulo eq 0}"
                                             filterMatchMode="contains" filter="#{BKArticuloKardex.listaPartida.size() gt 10}" >
                                <f:selectItem itemLabel="Seleccionar" itemValue="" />
                                <f:selectItems value="#{BKArticuloKardex.listaPartida}"
                                               var="partida" itemLabel="#{partida}"
                                               itemValue="#{partida}" />
                            </p:selectOneMenu>

                            <h:outputLabel id="lblFechaInicio" value="FECHA INCIO: " class="lblBusqueda"/>
                            <p:calendar id="txtFechaInicio" locale="es"
                                        value="#{BKArticuloKardex.fechaInicio}" 
                                        pattern="dd/MM/yyyy" 
                                        maxdate="#{BKArticuloKardex.fechaFinal}"
                                        showOn="button" showButtonPanel="true" navigator="true">
                                <p:ajax event="dateSelect" process="@this" update="txtFechaFinal" />
                            </p:calendar>

                            <h:outputLabel id="lblFechaFinal" value="FECHA FIN: " class="lblBusqueda"/>
                            <p:calendar id="txtFechaFinal" locale="es"
                                        value="#{BKArticuloKardex.fechaFinal}" 
                                        pattern="dd/MM/yyyy"
                                        mindate="#{BKArticuloKardex.fechaInicio}"
                                        showOn="button" showButtonPanel="true" navigator="true">
                                <p:ajax event="dateSelect" process="@this" update="txtFechaInicio"/>
                            </p:calendar>

                        </h:panelGrid>

                        <h:panelGrid columns="3" columnClasses="label, value"
                                     styleClass="grid">
                            <p:commandButton id="btnBuscarProdDisp" value="BUSCAR"
                                             update="pnlListaProdDisp,dataTablaProdDisp"
                                             actionListener="#{MBArticuloKardex.buscarArticuloKardex}"
                                             oncomplete="listaArtInventario.show();buscar.toggle()" style="font-size: 12px" rendered="false" />
                            <p:commandButton title="Reporte" icon="ui-icon-document" value="Kardex Valorizado" action="#{MBArticuloKardex.verKardexValorizado()}" 
                                             ajax="false" process="@this" style="font-size: 12px" onclick="this.form.target = '_blank'" >
                            </p:commandButton>
                            <p:commandButton title="Reporte" icon="ui-icon-document" value="Kardex Saldo" action="#{MBArticuloKardex.verSaldo()}" 
                                             ajax="false" process="@this" style="font-size: 12px" onclick="this.form.target = '_blank'" >
                            </p:commandButton>
                            <p:commandButton title="Reporte" icon="ui-icon-document" value="Kardex Fisico" action="#{MBArticuloKardex.verKardexFisico()}" 
                                             ajax="false" process="@this" style="font-size: 12px" onclick="this.form.target = '_blank'" >
                            </p:commandButton>
                        </h:panelGrid>
                    </p:panel>

                    <p:panel id="pnlListaProdDisp" rendered="false"
                             header="Lista de Articulos Inventario" closable="true"
                             style="width: 100%;margin: 10px auto" visible="false"
                             widgetVar="listaArtInventario">

                        <h:panelGrid style="margin: 15px auto" cellspacing="4" columns="2">
                            <h:commandButton value="Exportar EXCEL">  
                                <p:dataExporter type="xls" target="dataTablaProdDisp" fileName="kardex" />  
                            </h:commandButton>  

                            <h:commandButton value="Exportar PDF">  
                                <p:dataExporter type="pdf" target="dataTablaProdDisp" fileName="kardex"/>  
                            </h:commandButton>
                        </h:panelGrid>

                        <p:dataTable id="dataTablaProdDisp" var="kardex"
                                     value="#{BKArticuloKardex.listaKardex}" widgetVar="lista"
                                     emptyMessage="No se encontraron Articulos en Inventario"
                                     filteredValue="" rowIndexVar="rowIndex" paginator="true" rows="20"
                                     paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} 
                                     {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                                     rowsPerPageTemplate="40,80,100" styleClass="print"
                                     rowStyleClass="#{kardex.tiMovimiento  eq 'S'?'vendido':null}">

                            <p:column id="idColumnaNum" style="width: 5%" headerText="Nº">
                                <h:outputText value="#{rowIndex+1}" />
                            </p:column>

                            <p:column id="idColumnaArticulo" sortBy="#{kardex.articulo.nombreComercial}" >
                                <f:facet name="header">  
                                    <h:outputText value="Articulo" />  
                                </f:facet>
                                <h:outputText value="#{kardex.articulo.nombreComercial}" />
                            </p:column>

                            <p:column id="idColumnaPartidaLote" sortBy="#{kardex.partidaLote}" >
                                <f:facet name="header">  
                                    <h:outputText value="Partida" />  
                                </f:facet>
                                <h:outputText value="#{kardex.partidaLote}" />
                            </p:column>

                            <p:column id="idColumnaCantidad" sortBy="#{kardex.caMovimiento}" >
                                <f:facet name="header">  
                                    <h:outputText value="Cant. Movimiento" />  
                                </f:facet>
                                <h:outputText value="#{kardex.caMovimiento}" style="float: right" >
                                    <f:convertNumber maxFractionDigits="2" groupingUsed="false" minFractionDigits="2" />
                                </h:outputText>
                            </p:column>

                            <p:column id="idColumnatipo" sortBy="#{kardex.tiMovimiento}" >
                                <f:facet name="header">  
                                    <h:outputText value="Tipo" />  
                                </f:facet>
                                <h:outputText value="#{kardex.tiMovimiento eq 'S'?'SALIDA':kardex.tiMovimiento eq 'E'?'ENTRADA':'AJUSTE'}" style="float: right" >
                                    <f:convertNumber maxFractionDigits="2" groupingUsed="false" minFractionDigits="2" />
                                </h:outputText>
                            </p:column>

                            <p:column id="idColumnaMotivo" sortBy="#{kardex.motivo1.deCortaMotivo}" >
                                <f:facet name="header">  
                                    <h:outputText value="Motivo" />  
                                </f:facet>
                                <h:outputText value="#{kardex.motivo1.deMotivo}" />
                            </p:column>

                            <p:column id="idColumnaDocumento" sortBy="#{kardex.nuDocumento}" >
                                <f:facet name="header">  
                                    <h:outputText value="Num. Doc" />  
                                </f:facet>
                                <h:outputText value="#{kardex.nuDocumento}" />
                            </p:column>

                            <p:column id="idColumnaCosto" sortBy="#{kardex.vaCostoArticulo}" >
                                <f:facet name="header">  
                                    <h:outputText value="Valor" />  
                                </f:facet>
                                <h:outputText value="#{kardex.vaCostoArticulo}" style="float: right" >
                                    <f:convertNumber maxFractionDigits="2" groupingUsed="false" minFractionDigits="2" />
                                </h:outputText>
                            </p:column>

                            <p:column id="idColumnaPrecio" sortBy="#{kardex.vaPrecioArticulo}" >
                                <f:facet name="header">  
                                    <h:outputText value=" Precio" />  
                                </f:facet>
                                <h:outputText value="#{kardex.vaPrecioArticulo}" style="float: right" >
                                    <f:convertNumber maxFractionDigits="2" groupingUsed="false" minFractionDigits="2" />
                                </h:outputText>
                            </p:column>
                        </p:dataTable>
                    </p:panel>
                </h:form>

            </f:view>
        </ui:define>
    </ui:composition>

</html>